<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>GRNode</title>
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="GRNode";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../mmj/verify/GRForest.html" title="class in mmj.verify"><span class="strong">Prev Class</span></a></li>
<li><a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?mmj/verify/GRNode.html" target="_top">Frames</a></li>
<li><a href="GRNode.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">mmj.verify</div>
<h2 title="Class GRNode" class="title">Class GRNode</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>mmj.verify.GRNode</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">GRNode</span>
extends java.lang.Object</pre>
<div class="block">see RBCell(dot)java by Doug Lea, public domain; clone that puppy, and added
 Up/Down fields to create hierarchical forest of Grammar Rule Trees.
 <p>
 <i>Original documentation:</i>
 <p>
 GRNode implements basic capabilities of Red-Black trees, an efficient kind of
 balanced binary tree. The particular algorithms used are adaptations of those
 in Corman, Lieserson, and Rivest's <EM>Introduction to Algorithms</EM>. This
 class was inspired by (and code cross-checked with) a similar class by Chuck
 McManis. The implementations of rebalancings during insertion and deletion
 are a little trickier than those versions: Most standard accounts use a
 special dummy `nil' node for such purposes, but that doesn't work well in a
 possibly concurrent environment.
 <hr>
 <p>
 GRForest is a collection of static functions that operate on GRNode Trees.
 <p>
 Each tree's root is stored in mmj.lang.Cnst.gRRoot(dot).
 <p>
 A tree contains every Notation Grammar Rule that begins with the gRRoot's
 Cnst. Each leaf node has a reference (pointer) to a sub-tree, and so on. This
 enables all Rules whose expressions begin with "(" to share a common root.
 <p>
 The purpose of GRForest and GRNode was to provide a searchable repository of
 NotationRule information, and it is used for that purpose in
 mmj.verify.BottomUpParser.java. However, the Bottom Up algorithm is to
 inefficient for Metamath's set.mm and has been "deprecated" (to put it
 politely), in favor of mmj.verify.EarleyParser.java.
 <p>
 So, GRForest and GRNode are teetering on obsolescence and could be removed
 from without too much trouble. The only use for them still is checking for
 duplicate Rule expressions, and there is obviously a cheaper way to do that
 than with these things...(I'm guessing that since each GrammarRule carries
 its own expression that the hash code for each rule could be pre-computed and
 even stored, if desired, and then used as the key to a HashSet. Bada bing,
 bada boom.)
 <p>
 Therefore, I am not going to document these any further.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#color_">color_</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementCnst_">elementCnst_</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementDownLevelRoot_">elementDownLevelRoot_</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementNotationRule_">elementNotationRule_</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementUpLevel_">elementUpLevel_</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#left_">left_</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#parent_">parent_</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#right_">right_</a></strong></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../mmj/verify/GRNode.html#GRNode(mmj.lang.Cnst)">GRNode</a></strong>(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../mmj/verify/GRNode.html#GRNode(mmj.lang.Cnst, mmj.verify.NotationRule, mmj.verify.GRNode, mmj.verify.GRNode)">GRNode</a></strong>(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst,
      <a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&nbsp;elementNotationRule,
      <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementUpLevel,
      <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementDownLevelRoot)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#copyContents(mmj.verify.GRNode)">copyContents</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;t)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementCnst()">elementCnst</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementCnst(mmj.lang.Cnst)">elementCnst</a></strong>(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;v)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementDownLevelRoot()">elementDownLevelRoot</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementDownLevelRoot(mmj.verify.GRNode)">elementDownLevelRoot</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;v)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementNotationRule()">elementNotationRule</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementNotationRule(mmj.verify.NotationRule)">elementNotationRule</a></strong>(<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&nbsp;v)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementUpLevel()">elementUpLevel</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#elementUpLevel(mmj.verify.GRNode)">elementUpLevel</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;v)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#find(mmj.lang.Cnst)">find</a></strong>(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#fixAfterInsertion(mmj.verify.GRNode)">fixAfterInsertion</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#insertLeft(mmj.verify.GRNode, mmj.verify.GRNode)">insertLeft</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;cell,
          <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#insertRight(mmj.verify.GRNode, mmj.verify.GRNode)">insertRight</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;cell,
           <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#isRoot()">isRoot</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#left()">left</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#leftmost()">leftmost</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#loadRuleCollection(java.util.Collection)">loadRuleCollection</a></strong>(java.util.Collection&lt;<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&gt;&nbsp;ruleCollection)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#parent()">parent</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#predecessor()">predecessor</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#right()">right</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#rightmost()">rightmost</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#root()">root</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#rotateLeft(mmj.verify.GRNode)">rotateLeft</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#rotateRight(mmj.verify.GRNode)">rotateRight</a></strong>(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#size()">size</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a></code></td>
<td class="colLast"><code><strong><a href="../../mmj/verify/GRNode.html#successor()">successor</a></strong>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="elementCnst_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementCnst_</h4>
<pre>protected&nbsp;<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a> elementCnst_</pre>
</li>
</ul>
<a name="elementNotationRule_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementNotationRule_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a> elementNotationRule_</pre>
</li>
</ul>
<a name="elementUpLevel_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementUpLevel_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a> elementUpLevel_</pre>
</li>
</ul>
<a name="elementDownLevelRoot_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementDownLevelRoot_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a> elementDownLevelRoot_</pre>
</li>
</ul>
<a name="color_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>color_</h4>
<pre>protected&nbsp;boolean color_</pre>
</li>
</ul>
<a name="left_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>left_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a> left_</pre>
</li>
</ul>
<a name="right_">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>right_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a> right_</pre>
</li>
</ul>
<a name="parent_">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>parent_</h4>
<pre>protected&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a> parent_</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="GRNode(mmj.lang.Cnst)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>GRNode</h4>
<pre>public&nbsp;GRNode(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst)</pre>
</li>
</ul>
<a name="GRNode(mmj.lang.Cnst, mmj.verify.NotationRule, mmj.verify.GRNode, mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>GRNode</h4>
<pre>public&nbsp;GRNode(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst,
      <a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&nbsp;elementNotationRule,
      <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementUpLevel,
      <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementDownLevelRoot)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="loadRuleCollection(java.util.Collection)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadRuleCollection</h4>
<pre>public&nbsp;void&nbsp;loadRuleCollection(java.util.Collection&lt;<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&gt;&nbsp;ruleCollection)</pre>
</li>
</ul>
<a name="elementCnst()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementCnst</h4>
<pre>public final&nbsp;<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst()</pre>
</li>
</ul>
<a name="elementNotationRule()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementNotationRule</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&nbsp;elementNotationRule()</pre>
</li>
</ul>
<a name="elementUpLevel()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementUpLevel</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementUpLevel()</pre>
</li>
</ul>
<a name="elementDownLevelRoot()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementDownLevelRoot</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;elementDownLevelRoot()</pre>
</li>
</ul>
<a name="elementCnst(mmj.lang.Cnst)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementCnst</h4>
<pre>public final&nbsp;void&nbsp;elementCnst(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;v)</pre>
</li>
</ul>
<a name="elementNotationRule(mmj.verify.NotationRule)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementNotationRule</h4>
<pre>public final&nbsp;void&nbsp;elementNotationRule(<a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify">NotationRule</a>&nbsp;v)</pre>
</li>
</ul>
<a name="elementUpLevel(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementUpLevel</h4>
<pre>public final&nbsp;void&nbsp;elementUpLevel(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;v)</pre>
</li>
</ul>
<a name="elementDownLevelRoot(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>elementDownLevelRoot</h4>
<pre>public final&nbsp;void&nbsp;elementDownLevelRoot(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;v)</pre>
</li>
</ul>
<a name="left()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>left</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;left()</pre>
</li>
</ul>
<a name="right()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>right</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;right()</pre>
</li>
</ul>
<a name="parent()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parent</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;parent()</pre>
</li>
</ul>
<a name="copyContents(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyContents</h4>
<pre>protected&nbsp;void&nbsp;copyContents(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;t)</pre>
</li>
</ul>
<a name="leftmost()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>leftmost</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;leftmost()</pre>
</li>
</ul>
<a name="rightmost()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rightmost</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;rightmost()</pre>
</li>
</ul>
<a name="root()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>root</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root()</pre>
</li>
</ul>
<a name="isRoot()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRoot</h4>
<pre>public final&nbsp;boolean&nbsp;isRoot()</pre>
</li>
</ul>
<a name="successor()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>successor</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;successor()</pre>
</li>
</ul>
<a name="predecessor()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>predecessor</h4>
<pre>public final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;predecessor()</pre>
</li>
</ul>
<a name="size()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre>public final&nbsp;int&nbsp;size()</pre>
</li>
</ul>
<a name="find(mmj.lang.Cnst)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>find</h4>
<pre>public&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;find(<a href="../../mmj/lang/Cnst.html" title="class in mmj.lang">Cnst</a>&nbsp;elementCnst)</pre>
</li>
</ul>
<a name="insertLeft(mmj.verify.GRNode, mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insertLeft</h4>
<pre>public&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;insertLeft(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;cell,
                <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</pre>
</li>
</ul>
<a name="insertRight(mmj.verify.GRNode, mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>insertRight</h4>
<pre>public&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;insertRight(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;cell,
                 <a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</pre>
</li>
</ul>
<a name="rotateLeft(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rotateLeft</h4>
<pre>protected final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;rotateLeft(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</pre>
</li>
</ul>
<a name="rotateRight(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rotateRight</h4>
<pre>protected final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;rotateRight(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</pre>
</li>
</ul>
<a name="fixAfterInsertion(mmj.verify.GRNode)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fixAfterInsertion</h4>
<pre>protected final&nbsp;<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;fixAfterInsertion(<a href="../../mmj/verify/GRNode.html" title="class in mmj.verify">GRNode</a>&nbsp;root)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../mmj/verify/GRForest.html" title="class in mmj.verify"><span class="strong">Prev Class</span></a></li>
<li><a href="../../mmj/verify/NotationRule.html" title="class in mmj.verify"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?mmj/verify/GRNode.html" target="_top">Frames</a></li>
<li><a href="GRNode.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
